import { createApp } from 'vue'
import pinia from '@/stores'

import App from './App.vue'
import router from './router'

// 样式
// 依赖包
// highlight 的样式，依赖包，组件
import 'highlight.js/lib/common'
// import hljs from 'highlight.js'
import hljs from '@/utils/marker.js'
// code高亮插件
import hljsVuePlugin from '@highlightjs/vue-plugin'
// 核心css
import '@/styles/main.scss'
// 事件中心
import '@/utils/eventBus.js'
// 字体图标
import '@/assets/icons/font/iconfont.js'

import echarts from '@/depend/Echarts/echarts.js'

const app = createApp(App)

// 挂载到vue实例中
// Vue.prototype.$echarts = echarts;//vue2的挂载方式
app.provide('$echarts', echarts) //vue3的挂载方式
//调用的时候就是 ：  this.$echarts.init()

// 全局自定义指令
app.directive('focus', {
  mounted(el) {
    el.focus()
  }
})

app.use(hljs)
app.use(hljsVuePlugin)
app.use(router)
app.use(pinia)

app.mount('#app')
